Method, system, and node for node interconnection on content delivery network

ABSTRACT

The present invention discloses a method, a system, and a node for node interconnection on a content delivery network. This content delivery network includes a first-level CDN node that is formed of a first CDN media server and a first CDN content storage and is configured to provide content for a user, and a second-level CDN node that is formed of a second CDN media server and a second CDN content storage and interconnects with the first-level CDN node, where the first CDN media server accesses the content in the second CDN content storage by using an IP-layer storage access protocol. The networking is simplified and the content access efficiency and the resource utilization are improved by using the technical solutions of node interconnection on the content delivery network provided in the present invention.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to Chinese Patent Application No.201210018878.9, filed on Jan. 20, 2012, which is hereby incorporated byreference in its entirety.

FIELD OF THE INVENTION

The present invention relates to communications technologies, and inparticular to a method, a system, and a node for node interconnection ona content delivery network.

BACKGROUND OF THE INVENTION

A content delivery network (Content Delivery Network, CDN) releasescontent on a network “edge” nearest to a user by adding a new networkarchitecture into an existing IP network, so that the user may obtainneeded content nearby. The CDN is formed of a plurality of CDN nodesforming a tree structure or a mesh structure. The lower the position ofa node is in the network structure, the nearer the node is to the user.Generally, the most popular content, that is, the content accessed withthe highest frequency, is stored on the node that is near the user toenable the user to obtain a service nearby and to reduce loss ofupper-level network bandwidth. A CDN node is generally formed of aplurality of media server clusters, and provides several users withstreaming media services simultaneously.

In addition, the CDN technology is widely used in fields such as PCstreaming media, Internet Protocol television (Internet ProtocolTelevision, IPTV), mobile streaming media, and video surveillance, andsolves experience problems due to reasons such as insufficient networkbandwidth, a large number of accesses, and uneven distribution ofnetwork nodes when a user accesses streaming media content.

In a CDN system, media servers are deployed to buffer media content andprovide the user with a service nearby. There are a large number ofusers, and the performance of a media server is limited. Therefore,generally, a group of media services form a CDN node to provide mediaservices for the users in an area. In addition, the content popularityon the CDN varies, so the CDN nodes are deployed at different layers onthe CDN. That is, the content with high popularity is stored on the nodethat is deployed near the user side, and the content with low popularityis stored on the node that is deployed at a high layer and far from theuser side.

Currently, all CDN systems widely deployed around the world use a closedarchitecture. One hierarchical multi-node CDN is provided uniformly byone CDN vendor. The CDN nodes provided by different vendors cannotimplement interconnection and interworking, and the CDN nodes providedby a same vendor are not open to and cannot interconnect with the CDNnodes provided by other vendors. As a result, the cost for deploying aCDN is high. When several CDNs co-exist in a country, the content onthose CDNs cannot be shared, so the delivery efficiency of utilizingthose CDNs cannot be maximized.

The difficulties in the interconnection and interworking of CDNsprovided by different vendors and opening of CDN nodes provided by asame vendor lie in inconsistent content delivery (including content PUSHand content PULL) protocols used by nodes on CDNs provided by eachvendor. Streaming protocols used on the Internet are various, thus theprotocols used by different node on CDNs are various, and some nodes mayuse proprietary protocols for transmission. Therefore, theinterconnection and interworking of CDNs and the opening andinterconnection of the CDN nodes to other CDN nodes cannot beimplemented by unifying protocols.

FIG. 1 is a schematic diagram of interconnection and interworking amongnodes on different CDNs. On different CDNs, that is, CDN 1 and CDN 2,the nodes are classified, according to their hierarchical positions onthe network, into centre nodes, backbone nodes, and edge nodes, whichare configured to store content with different frequency of access fromusers respectively. An edge node is configured to store the contentaccessed by users with high frequency. A backbone node is configured tostore the content accessed by users with low frequency. A centre node isconfigured to store the content accessed by users with lower frequency.Because no unified protocols exist currently, it is difficult toimplement the interconnection and interworking among nodes on differentCDNs.

FIG. 2 is a schematic diagram of an open CDN architecture. Currently,because no standards exist, it is very difficult to open a CDN. In someareas, interworking is implemented by supporting interface protocolsused by nodes on different CDNs. However, the content cannot bereplicated to other CDNs on a large scale, and it is highly complicatedto unify interaction protocols and implement interconnection among nodeson different CDNs.

FIG. 3 and FIG. 4 illustrate a solution for implementing interconnectionand interworking among nodes on CDNs provided by different vendors.

As shown in FIG. 3, a standard Internet protocols are used forinterconnection and interworking to implement the interconnection amongnodes on the CDNs provided by different vendors. When various Internetterminals request media services by using different Internet protocols,a CDN A node (CDN A Node), after judging that it has no content,requests the content from a CDN B node (CDN B Node). In this case amedia server on the CDN B Node may forward the request messages of theterminals to the media server on the CDN B Node in a Proxy way. In thiscase, the media server on the CDN B Node needs to parse differentInternet protocol messages and use these Internet protocols to obtaincontent from the media server on the CDN BNode. Addition of one type ofterminal means the possible addition of one Internet protocol. As aresult, both the CDN A Node and the CDN B Node need to be modifiedaccordingly to support a new Internet protocol.

As shown in FIG. 4, if the solution illustrated in FIG. 3 is used tointerconnect backbone nodes or edge nodes on the CDNs provided by othervendors to implement the interconnection and interworking of the CDNsillustrated in FIG. 3, the nodes on the CDNs provided by other vendorsneed use various Internet protocols to implement cascading. When onetype of Internet protocol is added, at least two nodes on different CDNsneed to be modified to support a new protocol message.

If the interconnection solution illustrated in FIG. 3 and FIG. 4 isused, the nodes, which are on all the CDNs and need to be cascaded, needto support various Internet protocols. When one type of Internetprotocol is added, two or more CDN nodes need to be modified to supporta new protocol message. In addition, when one type of Internet protocolis added, the nodes, which are on all the CDNs and need to be cascaded,need to be modified to adapt to a new Internet protocol. However, someInternet protocols are not opened. When the nodes on the CDNs need to becascaded, those Internet protocols, which are not opened, cannot besupported, that is, terminals that use those Internet protocols, whichare not opened, cannot be supported.

FIG. 5 and FIG. 6 illustrate another solution for implementinginterconnection and interworking among nodes on CDNs provided bydifferent vendors.

As shown in FIG. 5, a unified interface protocol is defined at theapplication layer to implement the interconnection among the nodes onCDNs provided by different vendors. The unified interface protocol usedby the nodes on a CDN A (CDN A) and a CDN B (CDN B) is defined tosupport the transmission of using different Internet protocols. When amedia server on a CDN B node (CDN B Node) receives a request from aterminal, if no content is found locally, it converts this protocol tothe unified interface protocol and sends the request to a media serveron a CDN A node (CDN A Node). The media server on the CDN A node sendsthe content to the media server on the CDN B node by using the unifiedinterface protocol to provide streaming media services for the terminal.Addition of one type of terminal means the possible addition of oneInternet protocol. In this case, if the unified interface protocol mayinclude all the content of a new protocol, there is no need to modifycascaded interfaces on the CDN A node and the CDN B node; if the unifiedinterface protocol cannot entirely support a new Internet protocol, thisunified interface protocol needs to be modified, so the CDN A node andthe CDN B node need to modify part of their cascaded interfaces.

As shown in FIG. 6, if the solution illustrated in FIG. 5 is used tointerconnect backbone nodes or edge nodes on CDNs provided by othervendors to implement the interconnection and interworking of CDNsillustrated in FIG. 5, a suite of unified interface protocols needs tobe defined for supporting all Internet protocols at the applicationlayer. The nodes on CDNs provided by different vendors use the unifiedinterface protocols to implement cascading. When one type of Internetprotocol is added, it needs to be judged whether this unified interfaceprotocol is affected. If yes, the unified interface protocol needs to bemodified, and at least two nodes on different CDNs need to be modifiedto support a new unified interface protocol.

As shown in FIG. 7, when either the interconnection solution illustratedin FIG. 3 and FIG. 4 or the interconnection solution illustrated in FIG.5 and FIG. 6 is used, node interconnection on different CDNs isimplemented at the application layers of media servers on CDN nodes.When a CDN A node (CDN A Node) needs to access content stored on a CDN Bnode (CDN B Node), the data flow is shown in FIG. 7. A media server onthe CDN A node requests content from a media server on a remote CDN Bnode by using a media protocol. The media server on this CDN B nodereads the content in a local content storage by using a standardinterface provided on an operating system (Operating System, OS) and,after the content is obtained at the application layer, forwards thecontent to the media server on the CDN A node. When the content istransmitted between the media server on the CDN A node and the mediaserver on the CDN B node, the interface of the operating system isinvoked and the content is transmitted through a link layer (LinkLayer), like all applications that need to send messages through anetwork port. In addition, storage networking and access vary withdifferent storage networking mechanisms (such as NAS (network-attachedstorage), SAN (storage area network), and DAS (direct-attachedstorage)).

When the interconnection solution illustrated in FIG. 5 and FIG. 6 isused, a unified interface protocol needs to be defined to support allInternet protocols. It is very complicated to define this unifiedinterface protocol because the interface protocol needs to supportdifferent transmission protocols, different file formats, and differentcoding formats. When one type of Internet protocol is added, it needs tobe judged whether this unified interface protocol is affected. If yes,this interface protocol needs to be modified, and all the CDNs that needto be cascaded need to be modified to adapt to a new unified interfaceprotocol. In addition, some Internet protocols are not opened and theunified interface protocol cannot support those Internet protocols thatare not opened, that is, terminals that use those Internet protocols,which are not opened, cannot be supported.

To sum up, difficulties in implementing the interconnection andinterworking among the nodes on different CDNs are as follows:

1. As there are a variety of Internet protocols, it is complicated thatthe media servers on the nodes on different CDNs or on a same CDN arecompatible with all the Internet protocols.

2. The interconnection and interworking among the nodes on differentCDNs or on a same CDN rely on the implementation of various Internetprotocols, or defining a complicated unified interface protocol that iscompatible with all Internet protocols.

3. Currently, a method used to interconnect and interwork with the nodeson different CDNs is closely related to the Internet protocols. With theaddition and change of the Internet protocols, the CDN nodes need to bemodified constantly to adapt to new Internet protocols.

SUMMARY OF THE INVENTION

To solve the preceding problems, embodiments of the present inventionuse the following technical solutions:

An embodiment of the present invention provides a content deliverynetwork (CDN). This CDN includes a first-level CDN node that is formedof a first CDN media server and a first CDN content storage and isconfigured to provide content for a user, and a second-level CDN nodethat is formed of a second CDN media server and a second CDN contentstorage and interconnects with the first-level CDN node, where the firstCDN media server accesses the content in the second CDN content storageby using an IP-layer storage access protocol.

In this embodiment, the second-level CDN node is an upper-level node ofthe first-level CDN node.

In this embodiment, if the first CDN content storage and the second CDNcontent storage have the same content, and if the same content needs tobe accessed, the first CDN media server preferably accesses the firstCDN content storage.

In this embodiment, the first CDN media server, by mounting (LUN Mount)a logical storage unit in the first CDN content storage, generates afirst content index corresponding to the logical storage unit in thefirst CDN content storage.

In this embodiment, the first CDN media server, by using an IP-layerstorage access protocol and mounting (LUN Mount) on the logical storageunit in the second CDN content storage, generates a second content indexcorresponding to the logical storage unit in the second CDN contentstorage.

In this embodiment, when receiving, from a user, a request for accessingcontent, the first CDN media server searches the first content index andthe second content index to obtain the CDN content storage whererequested access content is located. When the requested access contentis stored in the first CDNcontent storage, the first CDN media serverobtains the requested access content from the first CDN content storage.When the requested access content is stored in the second CDN contentstorage, the first CDN media server accesses the second CDN contentstorage by using the IP-layer storage access protocol to obtain therequested access content.

In this embodiment, the IP-layer storage access protocol is the InternetSmall Computer System Interface (iSCSI) protocol.

An embodiment of the present invention further provides a contentdelivery network, including a first content delivery network and asecond content delivery network.

The first content delivery network includes a first-level CDN node thatis formed of a first CDN media server and a first CDN content storageand is configured to provide content for a user. The second contentdelivery network includes a second-level CDN node that is formed of asecond CDN media server and a second CDN content storage andinterconnects with the first-level CDN node. The first CDN media serveraccesses the content in the second CDN content storage by using anIP-layer storage access protocol.

An embodiment of the present invention further provides an edge node ona content delivery network, including a first CDN media server and afirst CDN content storage. The edge node interconnects with a backbonenode on the content delivery network. The backbone node is formed of asecond CDN media server and a second CDN content storage, where thefirst CDN media server accesses content in the second CDN contentstorage by using an IP-layer storage access protocol.

An embodiment of the present invention further provides an edge node ona content delivery network, including a first CDN media server and afirst CDN content storage. The edge node interconnects with a centrenode on the content delivery network. The centre node is formed of asecond CDN media server and a second CDN content storage, where thefirst CDN media server accesses content in the second CDN contentstorage by using an IP-layer storage access protocol.

An embodiment of the present invention further provides a method fornode interconnection on a content delivery network (CDN), including: afirst CDN media server on a first-level CDN node accesses a first CDNcontent storage and generates a first content index that corresponds toa logical storage unit in the first CDN content storage, and a first CDNmedia server on a first-level CDN node accesses a second CDN contentstorage on a second-level CDN node by using an IP-layer storage accessprotocol and generates a second content index that corresponds to thelogical storage unit in the second CDN content storage.

The first CDN media server on the first-level CDN node receives, from auser, a request for accessing content. The first CDN media server on thefirst-level CDN node searches the first content index and the secondcontent index to obtain the CDN content storage where the requestedaccess content is located. When the requested access content is storedin the second CDN content storage, the first CDN media server accessesthe second CDN content storage by using an IP-layer storage accessprotocol to obtain the requested access content.

In this embodiment, if the requested access content is stored in boththe first CDN content storage and the second CDN content storage, theCDN media server preferably obtains the requested access content fromthe first CDN content storage.

In this embodiment, the first CDN media server accesses the first CDNcontent storage by using the IP-layer storage access protocol.

In this embodiment, the IP-layer storage access protocol is the iSCSIprotocol.

An embodiment of the present invention further provides a contentdelivery network, including an edge node, a backbone node, and a centrenode, which are configured to store content with different popularity ofaccess from users respectively, and further including a delivery node,where content storages are deployed on the edge node, the backbone node,and the centre node, and a media server is deployed on the deliverynode. The media server accesses the content storages on the edge node,the backbone node, and the centre node by using an IP-layer storageaccess protocol.

In this embodiment, priorities for accessing the content storages on theedge node, the backbone node, and the centre node are set in the mediaserver. The media server searches for content according to thepriorities and provides the content for a user.

Analysis on technical effects of the preceding embodiments is asfollows: when stored content is accessed among nodes on different CDNsor on a same CDN, the application layer of a media server on a CDN nodeis not involved, and a remote IP-layer storage access mechanism is usedfor remote sharing of stored content among the nodes on different CDNsor on a same CDN. An operating system layer cooperates with a contentstorage to implement a storage protocol. Therefore, for a CDN streamingmedia application, the content on other CDN nodes may be accessedwithout modifying the nodes on different CDNs, like in accessing localcontent. In this way, the networking is simplified, and the contentaccess efficiency and the resource utilization are improved.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of networking architecture forinterconnection and interworking among nodes on different contentdelivery networks (CDNs) in the prior art;

FIG. 2 is a schematic diagram of an open CDN architecture in the priorart;

FIG. 3 is a schematic diagram of a part of networking architecture forimplementing interconnection and interworking among nodes on CDNsprovided by different vendors in the prior art;

FIG. 4 is a schematic diagram of a global networking architecture forimplementing interconnection and interworking among nodes on CDNsprovided by different vendors in the prior art;

FIG. 5 is a schematic diagram of a part of another networkingarchitecture for implementing interconnection and interworking amongnodes on CDNs provided by different vendors in the prior art;

FIG. 6 is a schematic diagram of another global networking architecturefor implementing interconnection and interworking among nodes on CDNsprovided by different vendors in the prior art;

FIG. 7 is a schematic structural diagram of implementing theinterconnection among nodes on different CDNs at the application layerof a media server in the prior art;

FIG. 8 is a schematic structural diagram of implementing, based on an IPSAN storage structure, the interconnection among nodes on differentCDNs, according to an embodiment of the present invention;

FIG. 9 is a conceptual diagram of accessing, by a media server on a CDNnode, a local content storage of the node and a content storage on anode on other CDNs according to an embodiment of the present invention;

FIG. 10 is a schematic structural diagram of implementinginterconnection among nodes on different CDNs, based on an IP SANstorage structure and by using an IP-layer storage access protocolaccording to an embodiment of the present invention;

FIG. 11 is a schematic structural diagram for implementinginterconnection and interworking inside a CDN and among different CDNsaccording to an embodiment of the present invention;

FIG. 12 is a schematic structural diagram for implementinginterconnection and interworking inside a CDN and among different CDNsaccording to another embodiment of the present invention;

FIG. 13 is a schematic structural diagram for implementinginterconnection and interworking inside a CDN and among different CDNsaccording to another embodiment of the present invention;

FIG. 14 is a schematic structural diagram of a media server that is onan edge node on a CDN and is mounted with a content storage on othernodes according to an embodiment of the present invention;

FIG. 15 is a schematic structural diagram of a CDN storage cloud(Storage Cloud) networking architecture according to an embodiment ofthe present invention; and

FIG. 16 is a schematic structural diagram of another media cloud (MediaCloud) networking architecture according to an embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

The following describes embodiments of the present invention in detailwith reference to the accompanying drawings.

According to the solutions described in the background of the presentinvention, currently, either each Internet protocol at the applicationlayer or a common unified protocol at the application layer is used,cascading among nodes on different CDNs is implemented by using theapplications of a media server on a CDN node. In the present invention,the application layer of the media server on the CDN node is notinvolved when stored content on the nodes on different CDNs or on a sameCDN is accessed, and an IP-layer storage access protocol is used toimplement remote sharing of the content among various nodes on differentCDNs by using a remote storage access mechanism at the Internet Protocol(Internet Protocol, IP) layer. An operating system layer cooperates witha content storage to implement a storage protocol. Therefore, for a CDNstreaming media application, the content on other CDN nodes may beaccessed without modifying the nodes on different CDNs, like inaccessing local content. Embodiments of the present invention relate tothe application layer, IP layer, and link layer, which are withreference to the seven-layer Open System Interconnect (Open SystemInterconnect, OSI) structure or the four-layer Transmission ControlProtocol/Internet Protocol (Transmission Control Protocol/InternetProtocol, TCP/IP) structure.

As shown in FIG. 8, an IP SAN (Storage Area Network, storage areanetwork) storage structure is used as an example. A CDN A (CDN A) nodeincludes a media server 11 and a corresponding content storage 12, amedia server 21 and a corresponding content storage 22, and a switchingdevice A configured to exchange data between the media servers 11 and 21and the content storages 12 and 22. A CDN B (CDN B) node includes amedia server 31 and a corresponding content storage 32, and a switchingdevice B configured to exchange data between the media server 31 and thecontent storage 32. Particularly, this switching device A may access theswitching device B by using an IP-layer storage access protocol. Thefollowing specifically describes how the media server 11 on the CDN Anode accesses a local content storage 12 and the content storage 32 onthe CDN B node with reference to FIG. 9.

As shown in FIG. 9, if the media server 11 on the CDN A node accessesthe local content storage 12 of the node, logical storage units in thelocal content storage 12 need to be mounted (for example, LUN (logicalunit number) mounted) to the local media server 11 first and driveletters C and D corresponding to the logical storage units are set. Inthis way, the media server 11 is capable of accessing media content inthe local content storage 12. To access content on the remote CDN Bnode, similarly, the content storage 32 on the CDN B node is mounted(LUN mount) to the media server 11 on the CDN A, and corresponding driveletters E and F is configured. In this way, the media server 11 on theCDN A is capable of accessing the content storage 32 on the CDN B. Aplurality of drive letters, which may be found on the media server 11 onthe CDN A, correspond to a plurality of logical storage units in thecontent storage 12 on the CDN A and a plurality of logical storage unitsin the content storage 32 on the CDN B. For an application on the mediaserver 11 on the CDN A, the logical storage units corresponding to thelocal content storage 12 are preferably searched according to apredefined policy only. If no content is found in these logical storageunits, the logical units corresponding to the content storage 32 on theCDN B are searched. That is, on a local CDN, a local node preferablyprovides services, and if the local node has no content, the local nodeobtains the content from a remote node, and then provides services.

FIG. 10 illustrates an IP SAN architecture as an example, andspecifically describes how to implement an access by the media server 11on the CDN A node to the content storage 32 on the CDN B node. An IPprotocol, for example, an Internet Small Computer System Interface(Internet Small Computer System Interface, iSCSI) protocol, is used fortransmission of the media content in a storage medium to implement theaccess by the media server 11 on the CDN A node to the content storage32 on the CDN B node. The iSCSI protocol is an end-to-end protocol usedfor transmission of a storage I/O (input/output) data block on an IPnetwork. This protocol is used in a server (initiator), a storage device(target), and a protocol transmission gateway device. Based on the iSCSIprotocol, data is transferred from the server to the storage device byusing a standard Ethernet switch and a router. In addition, due to theiSCSI protocol, an IP infrastructure and an Ethernet infrastructure maybe used to implement an expansion access to a SAN storage system andcomplete the expansion access to the SAN across any distance.

If the media server 11 on the CDN A node accesses the content storage 32on the CDN B node, the logical storage units in the content storage 32on the CDN B are mounted (LUN mount) to the media server 11 on the CDN Afirst. The specific solution is illustrated in FIG. 9. In this case, themedia server 11 on the CDN A may use an application interface 1102provided by a file system 110 illustrated in FIG. 10 to access a remotecontent storage 32. The specific steps are as follows:

An application layer 112 on the CDN A invokes a file read/writeinterface on the file system 110.

The file system 110 invokes a universal SCSI command set 1140 at astorage layer 114, and accesses the remote content storage 32 by usingthe unit of block.

An iSCSI driver 1160 at a driver layer 116 uses the iSCSI protocol toencapsulate the SCSI command set 1140, and invokes an interface at alink layer (Link) 118 to send or receive a storage access message. TheiSCSI protocol is based on a TCP message. Therefore, the remote contentstorage 32 on the CDN B may be accessed by using an IP switching deviceA, an IP switching device B, and an IP network.

The encapsulation based on the IP-layer protocol is implemented at thelink layer 118, and a read/write message is sent to the remote contentstorage 32 through a network port. Because IP packet encapsulation isimplemented at the link layer 118, the read/write operations on a blockare encapsulated into a plurality of IP packets at the link layer 118for transmission.

The IP packets are transmitted to the storage device on the remote CDN Bby using the IP switching device A and the IP switching device B.

After the link layer 320 of the content storage 32 on the CDN B receivesan iSCSI message, and after decapsulation and conversion to an SCSIcommand set by using the iSCSI 322 and the SCSI 324, the media data isread or written in from the local logical storage units, therebyimplementing the access to the remote content storage 32.

After node interconnection on different CDNs is implemented by using thepreceding methods, it only needs to make the CDNs that need to becascaded use an IP-based storage solution. For example, both an IP SANsolution and a network attached storage (Network attached storage, NAS)solution may be used to implement the interconnection among the nodes ondifferent CDNs. According to the method, if a new Internet protocol isbrought in due to a newly introduced terminal, only the node providingCDN services needs to be compatible with the interface of the terminal.An interconnection message among nodes on different CDNs is converted toaccess to a remote storage. After this access is implemented based onstandard storage networking, it is shielded by the operating systemlayer. Therefore, the purpose for remote interconnection is implementedwithout finding, by the application of the CDN node, which protocol isused at the system layer, and the CDN application does not need to bemodified due to an added Internet protocol.

In the embodiments described in FIG. 8-FIG. 10, the CDN A node, and itsincluded media server and content storage respectively correspond to afirst-level CDN node, an included first CDN media server, and anincluded first CDN content storage. The CDN B node, the included mediaserver, and the included content storage respectively correspond to asecond-level CDN node, an included second CDN media server, and anincluded second CDN content storage. The first-level CDN node and thesecond-level CDN node may be nodes located at a same network layer, forexample, edge nodes, or may be nodes located at different networklayers, for example, an edge node and a backbone node respectively. Inaddition, the technical solutions described in FIG. 8-FIG. 10 are notonly applicable to the interconnection among nodes on different CDNs,but also applicable to the interconnection among different nodes on asame CDN, whose interconnection method is the same as theinterconnection method of nodes on different CDNs.

FIG. 11 illustrates a case for implementing interconnection andinterworking inside a CDN and among different CDNs by using a technicalsolution provided in the present invention. In this case, a lower-levelnode (for example, an edge node 61 on a CDN B) needs to mount (LUNMount) a storage of an upper-level node (for example, a content storage522 on a backbone node and a content storage 512 on a centre node 51 ona CDN A) to a lower-level media server (for example, a media server 610on an edge node 61 on the CDN B), thereby implementing access toupper-level storage media content. If logical storage units in a localcontent storage 612 on the edge node 61 correspond to drive letters Cand D, if mounted logical storage units in the content storage 522 on abackbone node 52 correspond to drive letters E and F, and if mountedlogical storage units in the content storage 512 on the centre node 51correspond to the drive letters G and H, priority orders for the mediaserver 610 on the edge node 61 searching for content are as follows: Cand D take precedence over E and F, and E and F take precedence over Gand H. The content under any one directory is found, according to theorders, for providing a media service. Similarly, when the same contentis stored in both the logical storage units corresponding to the driveletters C and D and the logical storage units corresponding to the driveletters E and F, the media server 610 preferably obtains the contentfrom the logical storage units corresponding to the drive letters C andD, that is, obtaining the content from the local content storage 612 byusing an IP-layer storage access protocol. In addition, the presentinvention provides a method of generating a corresponding drive letterby mounting. This drive letter method is one of content index methods,where the drive letters C and D correspond to a first content index, andthe drive letters E and F or the drive letters G and H correspond to asecond content index. The media server searches the first content indexand the second content index for the content one by one. In otherembodiments in the present invention, the method is not limited to thedrive letter method, and may be methods such as a corresponding table ofthe content and a mapping table of the content.

FIG. 12 illustrates another case for implementing interconnection andinterworking inside a CDN and among different CDNs by using a technicalsolution provided in the present invention. In this case, theinterconnection and interworking on different CDNs is implementedaccording to the method provided in the present invention. Theinterconnection and interworking inside a same CDN may further beimplemented by using streaming interfaces among applications of a mediaserver. In FIG. 12, dashed lines indicate that a media server 610′ on anedge node 61′ on a CDN B accesses a content storage 522′ on a backbonenode 52′ and a content storage 512′ on a centre node 51′ on a CDN A byusing an IP-layer storage access protocol; a media server 620′ on anedge node 62′ on the CDN B accesses the content storage 512′ on thecentre node 51′ on the CDN A by using an IP-layer storage accessprotocol; and a media server 630′ on a backbone node 63′ on the CDN Baccesses the content storage 512′ on the centre node 51′ on the CDN A byusing an IP-layer storage access protocol. Solid lines indicate that theapplication of a media server 520′ on the backbone 52′ on the CDN Aaccesses a media server 510′ on the centre node 51′ on the CDN A byusing an application-layer streaming protocol and accesses a localcontent storage 522; and the application of the media server 620′ on theedge node 62′ on the CDN B accesses the media server 630′ on thebackbone node 63′ on the CDN B by using an application-layer streamingprotocol and accesses a local content storage 622′.

In the embodiments described in FIGS. 11-12, the CDN A node, and itsincluded media server and content storage respectively correspond to afirst-level CDN node, an included first CDN media server, and anincluded first CDN content storage. The CDN B node, and its includedmedia server and content storage respectively correspond to asecond-level CDN node, an included second CDN media server, and anincluded second CDN content storage. The first-level CDN node and thesecond-level CDN node may be nodes located at a same network layer, forexample, edge nodes, or may be nodes located at different networklayers, for example, an edge node and a backbone node respectively. Inaddition, the technical solutions described in FIGS. 11-12 are not onlyapplicable to the interconnection among nodes on different CDNs, butalso applicable to the interconnection among different nodes on a sameCDN, whose interconnection method is same as the interconnection methodof nodes on different CDNs.

Based on the consideration of storage consistency, when a plurality ofmedia servers access a same content storage, an arbiter server is neededto ensure that only one media server modifies media data in this contentstorage at the same time. Therefore, the local media server for homestorage may be set so that the local media server has full permissionfor this content storage and the media servers on other remote nodes canonly perform read operation on this storage but not modify data in thestorage. This may be implemented by configuring corresponding differentpriorities for different media servers when a logical storage unit ismounted by using the IP-layer storage access protocol, without involvingthe application layer.

Actually, when the interconnection among CDN nodes is all implemented byusing remote mounting connection, there is no need to deploy mediaservers on a non-edge node, instead, the media servers are all deployedon an edge node near a user. As shown in FIG. 13, after the mediaservers are all deployed on an edge node 61″ and an edge node 62″, alocal content storage 612″ on the edge node 61″, a content storage 522″on a backbone node 52″, and a content storage 512″ on a centre node 51″are all mounted (LUN Mount) to the media server 610″ on the edge node61″; and a local content storage 622″ on the edge node 62″, a contentstorage 632″ on a backbone node 63″, and the content storage 512″ on thecentre node 51″ are all mounted (LUN Mount) to the media server 620″ onthe edge node 62′. In this case, when providing services for a user, themedia server still searches storage content under correspondingdirectories one by one.

For both the interconnection among nodes on different CDNs and theinterconnection among nodes on a same CDN, the above technology can beused.

For the media servers on the nodes deployed at different layers, anintelligent adjustment to content delivery needs to be implemented, sothe content storage on the edge node stores the most popular content andmore users can hit the edge node. For example, the media server on theedge node has a plurality of directories described as follows:

E1-En: edge storage

R1-Rn: region storage

C1-Cn: centre storage

The media server may calculate and record the popularity of accessingeach storage content by the users, keep the most popular content storedin E1-En, the second most popular content stored in R1-Rn, and otherunpopular stored content in C1-Cn. When content adjustment needs to beimplemented, for example, copying some content of R1-Rn or C1-Cn toE1-En, only corresponding copy operation needs to be performed. It needsto be noted that the media server on the edge node only has fullpermission for E1-En, so it is only capable of performing read/writeoperations on E1-En, but cannot perform modification on R1-Rn and C1-Cn.

CDN architecture varies, which may be a tree structure, a mesh structureor other irregular structures. The CDN node interconnection technologiesprovided in the present invention are applicable to any CDN networkingcase. As shown in FIG. 14, for a media server on an edge node, a contentstorage on a local edge node 1, the content storage on an adjacent edgenode 2, the content storage on a direct upper-level region node 3, thecontent storage on an adjacent upper-level region node 4, the contentstorage on a centre node 5, and the content storage on other centre node6 may be mounted one by one to this media server. The media serverqueries according to an order and provides services for a user. That is,the local node first provides services, then the adjacent edge node of aregion node provides services, then a direct upper-level backbone nodeprovides services, then an adjacent upper-level backbone node providesservices, then the centre node provides services, and then other centrenodes provide services. Different CDN route may be implemented based ondifferent mounting orders.

As shown in FIG. 15, when solutions provided in the present inventionare used to form a CDN, content storages are deployed on edge nodes,backbone nodes, and centre nodes, and media servers are deployed ondelivery nodes (Delivery Nodes). The content storages on each nodeindependently form a storage cloud (Storage Cloud) without limiting thenetworking of this storage cloud, which may be a tree storage cloud, amesh storage cloud, or a storage cloud with other networking forms. Astorage type is not limited either. The media servers independently formdelivery nodes, mounting the content storages on nodes in differentnetwork positions one by one and providing services for a user. Themedia server on the delivery node only needs to support an IP-layerstorage access protocol and then may mount a plurality of remote contentstorages according to configurations and access the CDN. This furthermeans that the media servers that use mainstream operating systems arecapable of accessing the CDN seamlessly and form a CDN together. Thesemedia servers only need to support the setting of the service priorityfor accessing these content storages, search for content according tothe priority, and provide services for the user.

When various media servers in FIG. 16 interconnect with a CDN storagecloud to form a complete CDN, actually a media cloud (Media Cloud)network is formed. Various Internet terminals are routed, according to anormal CDN scheduling mechanism, to a nearest media server that providesservices. Actually, the media cloud is formed of multiple media serverson a plurality of delivery nodes and various content storages on aplurality of nodes. A terminal does not sense differences between mediaservers and content storages on different nodes. Therefore, the mediacloud is actually formed.

According to solutions provided in the present invention forimplementing interconnection among nodes on a CDN, a media server on anode uses an IP-layer storage access protocol to access a local contentstorage and the remote content storages on other nodes and obtaincontent from the remote content storages on other nodes when the localcontent storage mounted on the media server has no correspondingcontent, and provides services for a user. This method uses a standardfile read/write interface on an operating system to access the local andremote content storages though the IP-layer storage access protocol,therefore, this method avoids a problem on complicated implementation ofinterconnection among media servers on different nodes, which is due toa variety of Internet protocols.

A complete CDN may be built and the internal interconnection andinterworking on the CDN is simplified by using this method.

According to this method, both the media server and the content storageuse the standard IP storage access protocol. Therefore, various mediaservers and various content storages that comply with the protocol arecapable of using this method for interconnection and forming a mediacloud network.

This method may be applicable to any scenario where nodes that are onCDNs of different vendors and need to be cascaded. The difference onlylies in the application delivery of the media server on the CDN node andadaptability modification on a scheduling mechanism. However, themechanism for implementing cascading among nodes on different CDNs doesnot need to be modified.

This method is not related to the Internet protocols, and solves avariety of problems on Internet protocols. Adding an Internet terminalprotocol interface does not impact on the cascading among nodes on theCDN. Therefore, adaptive modification is not needed. In addition, thismethod is not related to the Internet protocols, but solves problems onimpossible interconnection among nodes, which are due to some Internetprotocols that are not opened.

Persons skilled in the art should understand that the preceding methodsof implementing node interconnection on a CDN may be implemented by aprogram instructing relevant hardware. The program may be stored in areadable storage medium. When the program is run, the correspondingsteps of the preceding methods are performed. The storage medium may bea ROM, a RAM, a magnetic disk, an optical disk, and the like.

The foregoing descriptions are exemplary embodiments for illustratingthe present invention. It should be noted that persons skilled in theart may still make improvements and polish without departing from theprinciples of the present invention. These improvements and polish alsofall within the protection scope of the present invention.

What is claimed is:
 1. A content delivery network (CDN), comprising: afirst-level CDN node that includes a first CDN media server and a firstCDN content storage, and is configured to provide content for a user,wherein the first CDN media server generates a first content indexcorresponding to a logical storage unit in the first CDN content storageby mounting a logical storage unit in the first CDN content storage; anda second-level CDN node that includes a second CDN media server and asecond content storage, and interconnects with the first-level CDN node,wherein: the first CDN media server accesses the content in the secondCDN content storage by using an IP (Internet Protocol) layer storageaccess protocol; wherein the first-level CDN node includes one of anedge node and a backbone node; wherein the second-level CDN includes oneof a backbone node and a centre node, and, wherein the second-level CDNnode is an upper-level node of the first-level CDN node.
 2. The networkaccording to claim 1, wherein if the first CDN content storage and thesecond CDN content storage have same content and if the first CDN mediaserver accesses the same content, then the first CDN media serverpreferably accesses the first CDN content storage.
 3. The networkaccording to claim 1, wherein the first CDN media server generates asecond content index corresponding to the logical storage unit in thesecond CDN content storage by using an IP layer storage access protocoland mounting the logical storage unit in the second CDN content storage.4. The network according to claim 3, wherein: when receiving, from auser, a request for accessing content, the first CDN media serversearches the first content index and the second content index to obtaina CDN content storage where requested access content is located; whenthe requested access content is stored in the first CDN content storage,the first CDN media server obtains the requested access content from thefirst CDN content storage; and when the requested access content isstored in the second CDN content storage, the first CDN media serveraccesses the second CDN content storage by using the IP layer storageaccess protocol to obtain the requested access content.
 5. The networkaccording to claim 1, wherein the IP layer storage access protocol is anInternet Small Computer System Interface (iSCSI) protocol.
 6. Thenetwork according to claim 1, wherein: a second content delivery networkcomprises a second-level CDN node that is formed of a second CDN mediaserver and a second CDN content storage and interconnects with thefirst-level CDN node; and the first CDN media server accesses content inthe second CDN content storage by using an IP layer storage accessprotocol.
 7. An edge node on a content delivery network (CDN),comprising: a first CDN media server; and a first CDN content storage,wherein the first CDN media server generates a first content indexcorresponding to a logical storage unit in the first CDN content storageby mounting a logical storage unit in the first CDN content storage;wherein the edge node interconnects with a backbone node on the CDN,wherein the backbone node is formed of a second CDN media server and asecond CDN content storage, and wherein the first CDN media serveraccesses content in the second CDN content storage by using an IP(Internet Protocol) layer storage access protocol.
 8. The edge nodeaccording to claim 7, wherein if the first CDN content storage and thesecond CDN content storage have same content and if the same contentneeds to be accessed, then the first CDN media server preferablyaccesses the first CDN content storage.
 9. The edge node according toclaim 7, wherein the first CDN media server generates a second contentindex corresponding to the logical storage unit in the second CDNcontent storage by using an IP layer storage access protocol andmounting the logical storage unit in the second CDN content storage. 10.The edge node according to claim 9, wherein: when receiving, from auser, a request for accessing content, the first CDN media serversearches the first content index and the second content index to obtainthe CDN content storage where requested access content is located; whenthe requested access content is stored in the first CDN content storage,the first CDN media server obtains the requested access content from thefirst CDN content storage; and when the requested access content isstored in the second CDN content storage, the first CDN media serveraccesses the second CDN content storage by using the IP layer storageaccess protocol to obtain the requested access content.
 11. The edgenode according to claim 7 wherein the IP layer storage access protocolis an Internet Small Computer System Interface (iSCSI) protocol.
 12. Acontent delivery network, comprising: an edge node; a backbone node; acentre node, wherein the edge node, the backbone node, and the centrenode are configured to store content with different popularity of accessfrom users, respectively; and a delivery node, wherein content storagesare deployed on the edge node, the backbone node, and the centre node,wherein a media server is deployed on the delivery node; and wherein themedia server accesses the content storages on the edge node, thebackbone node, and the centre node by using an IP (Internet Protocol)layer storage access protocol, wherein priorities for accessing thecontent storages on the edge node, the backbone node, and the centrenode are set in the media server, and the media server searches forcontent according to the priorities and provides the content for a user.